package com.arouter.demo.searchmodule.uri;

import android.annotation.SuppressLint;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.TextUtils;
import android.widget.TextView;

import com.alibaba.android.arouter.facade.annotation.Autowired;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.arouter.demo.baselib.router.RouterPath;
import com.arouter.demo.searchmodule.R;

/**
 * URL Encode  测试
 * arouter://m.aliyun.com/test/second?url=https%3a%2f%2fm.abc.com%3fa%3db%26c%3dd
 */
@Route(path = RouterPath.URI_TEST_SECOND)
public class UriTestSecondActivity extends AppCompatActivity {

    //通过URL跳转之后，在intent中拿不到参数如何解决？
    //需要注意的是，如果不使用自动注入，那么可以不写 ARouter.getInstance().inject(this)，
    // 但是需要取值的字段仍然需要标上 @Autowired 注解，因为 只有标上注解之后，
    // ARouter才能知道以哪一种数据类型提取URL中的参数并放入Intent中，这样您才能在intent中获取到对应的参数
    @Autowired
    String url;

    @SuppressLint("SetTextI18n")
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_uri_test_second);

        TextView tvClassName = findViewById(R.id.class_name);
        tvClassName.setText("I am " + UriTestSecondActivity.class.getName());

        // 未使用自动注入,属性也必须使用 @AutoWired 注解。api 的话就不需要。
        url = getIntent().getStringExtra("url");

        TextView tvUrl = findViewById(R.id.tv_receive_url_value);
        if (!TextUtils.isEmpty(url)) {
            tvUrl.setText(url);
        }


    }
}
